<?php

namespace Acme\PersonBundle\Entity;

use Acme\UserBundle\Entity\User;
use Doctrine\ORM\Mapping as ORM;

/**
 * Acme\PersonBundle\Entity\Person
 *
 * @ORM\Table(name="persons")
 * @ORM\Entity(repositoryClass="Acme\PersonBundle\Entity\PersonRepository")
 */
class Person {
	
	/**
	 * @ORM\Column(type="integer")
	 * @ORM\Id
	 * @ORM\GeneratedValue(strategy="AUTO")
	 */
	private $id;
	
	/**
	 * @ORM\Column(type="string", length=255)
	 */
	protected $lastname;
	
	/**
	 * @ORM\Column(type="string", length=255)
	 */
	private $firstname;
	
	/**
	 * @ORM\Column(type="string", length=255)
	 */
	private $street;
	
	/**
	 * @ORM\Column(type="string", length=25)
	 */
	private $postcode;
	
	/**
	 * @ORM\Column(type="string", length=255)
	 */
	private $city;
	
	/**
	 * @ORM\Column(type="string", length=255)
	 */
	private $country;
	
	/**
	 * @ORM\Column(type="string", length=25)
	 */
	private $phoneoffice;
	
	/**
	 * @ORM\Column(type="string", length=25)
	 */
	private $phonehome;
	
	/**
	 * @ORM\Column(type="string", length=25)
	 */
	private $mobile;
	
	/**
	 * @ORM\Column(type="string", length=60)
	 */
	private $email;
	
	/**
	 * @ORM\Column(type="string", length=25)
	 */
	private $skype;
	
	/**
	 * @ORM\Column(type="text")
	 */
	private $motto;
	
	/**
	 * @ORM\Column(type="boolean", options={"default":1})
	 */
	private $isbookemailsend;
	
	/**
	 * @ORM\ManyToMany(targetEntity="\Acme\UserBundle\Entity\User", mappedBy="persons")
	 */
	protected $users;
	
	/**
	 * @ORM\OneToMany(targetEntity="Personimage", mappedBy="person")
	 */
	protected $personimages;
	
	/**
	 * Constructor
	 */
	public function __construct() {
		$this->users = new \Doctrine\Common\Collections\ArrayCollection ();
	}
	
	/**
	 * Get id
	 *
	 * @return integer
	 */
	public function getId() {
		return $this->id;
	}
	
	/**
	 * Set lastname
	 *
	 * @param string $lastname        	
	 * @return Person
	 */
	public function setLastname($lastname) {
		$this->lastname = $lastname;
		
		return $this;
	}
	
	/**
	 * Get lastname
	 *
	 * @return string
	 */
	public function getLastname() {
		return $this->lastname;
	}
	
	/**
	 * Set firstname
	 *
	 * @param string $firstname        	
	 * @return Person
	 */
	public function setFirstname($firstname) {
		$this->firstname = $firstname;
		
		return $this;
	}
	
	/**
	 * Get firstname
	 *
	 * @return string
	 */
	public function getFirstname() {
		return $this->firstname;
	}
	
	/**
	 * Set street
	 *
	 * @param string $street        	
	 * @return Person
	 */
	public function setStreet($street) {
		$this->street = $street;
		
		return $this;
	}
	
	/**
	 * Get street
	 *
	 * @return string
	 */
	public function getStreet() {
		return $this->street;
	}
	
	/**
	 * Set postcode
	 *
	 * @param string $postcode        	
	 * @return Person
	 */
	public function setPostcode($postcode) {
		$this->postcode = $postcode;
		
		return $this;
	}
	
	/**
	 * Get postcode
	 *
	 * @return string
	 */
	public function getPostcode() {
		return $this->postcode;
	}
	
	/**
	 * Set city
	 *
	 * @param string $city        	
	 * @return Person
	 */
	public function setCity($city) {
		$this->city = $city;
		
		return $this;
	}
	
	/**
	 * Get city
	 *
	 * @return string
	 */
	public function getCity() {
		return $this->city;
	}
	
	/**
	 * Set country
	 *
	 * @param string $country        	
	 * @return Person
	 */
	public function setCountry($country) {
		$this->country = $country;
		
		return $this;
	}
	
	/**
	 * Get country
	 *
	 * @return string
	 */
	public function getCountry() {
		return $this->country;
	}
	
	/**
	 * Set phoneoffice
	 *
	 * @param string $phoneoffice        	
	 * @return Person
	 */
	public function setPhoneoffice($phoneoffice) {
		$this->phoneoffice = $phoneoffice;
		
		return $this;
	}
	
	/**
	 * Get phoneoffice
	 *
	 * @return string
	 */
	public function getPhoneoffice() {
		return $this->phoneoffice;
	}
	
	/**
	 * Set phonehome
	 *
	 * @param string $phonehome        	
	 * @return Person
	 */
	public function setPhonehome($phonehome) {
		$this->phonehome = $phonehome;
		
		return $this;
	}
	
	/**
	 * Get phonehome
	 *
	 * @return string
	 */
	public function getPhonehome() {
		return $this->phonehome;
	}
	
	/**
	 * Set mobile
	 *
	 * @param string $mobile        	
	 * @return Person
	 */
	public function setMobile($mobile) {
		$this->mobile = $mobile;
		
		return $this;
	}
	
	/**
	 * Get mobile
	 *
	 * @return string
	 */
	public function getMobile() {
		return $this->mobile;
	}
	
	/**
	 * Set email
	 *
	 * @param string $email        	
	 * @return Person
	 */
	public function setEmail($email) {
		$this->email = $email;
		
		return $this;
	}
	
	/**
	 * Get email
	 *
	 * @return string
	 */
	public function getEmail() {
		return $this->email;
	}
	
	/**
	 * Set skype
	 *
	 * @param string $skype        	
	 * @return Person
	 */
	public function setSkype($skype) {
		$this->skype = $skype;
		
		return $this;
	}
	
	/**
	 * Get skype
	 *
	 * @return string
	 */
	public function getSkype() {
		return $this->skype;
	}
	
	/**
	 * Set motto
	 *
	 * @param string $motto        	
	 * @return Person
	 */
	public function setMotto($motto) {
		$this->motto = $motto;
		
		return $this;
	}
	
	/**
	 * Get motto
	 *
	 * @return string
	 */
	public function getMotto() {
		return $this->motto;
	}
	
	/**
	 * Add users
	 *
	 * @param \Acme\UserBundle\Entity\User $users        	
	 * @return Person
	 */
	public function addUser(\Acme\UserBundle\Entity\User $users) {
		$this->users [] = $users;
		
		return $this;
	}
	
	/**
	 * Remove users
	 *
	 * @param \Acme\UserBundle\Entity\User $users        	
	 */
	public function removeUser(\Acme\UserBundle\Entity\User $users) {
		$this->users->removeElement ( $users );
	}
	
	/**
	 * Get users
	 *
	 * @return \Doctrine\Common\Collections\Collection
	 */
	public function getUsers() {
		return $this->users;
	}
	
	/**
	 * Add personimages
	 *
	 * @param \Acme\PersonBundle\Entity\Person $personimages        	
	 * @return Person
	 */
	public function addPersonimage(\Acme\PersonBundle\Entity\Person $personimages) {
		$this->personimages [] = $personimages;
		
		return $this;
	}
	
	/**
	 * Remove personimages
	 *
	 * @param \Acme\PersonBundle\Entity\Person $personimages        	
	 */
	public function removePersonimage(\Acme\PersonBundle\Entity\Person $personimages) {
		$this->personimages->removeElement ( $personimages );
	}
	
	/**
	 * Get personimages
	 *
	 * @return \Doctrine\Common\Collections\Collection
	 */
	public function getPersonimages() {
		return $this->personimages;
	}
	
	/**
	 * Set isbookemailsend
	 *
	 * @param boolean $isbookemailsend        	
	 * @return Person
	 */
	public function setIsbookemailsend($isbookemailsend) {
		$this->isbookemailsend = $isbookemailsend;
		
		return $this;
	}
	
	/**
	 * Get isbookemailsend
	 *
	 * @return boolean
	 */
	public function getIsbookemailsend() {
		return $this->isbookemailsend;
	}
}